package com.darwin.darwinImage.dar
{
	import com.darwin.darwinDisplay.DarBitmapData;
	
	import flash.utils.ByteArray;

	/**
	 * Dar文件解码器
	 * @author Roland
	 */
	public class DarDecoder
	{
		public function DarDecoder()
		{
		}
		
		/**
		 *	将.dar的二进制数据解析成一个数组，其中含有数个DarBitmapData对象，各表示一段动画 
		 * @param bytes
		 * @return 
		 * 
		 */
		public function decode(bytes:ByteArray):Array
		{
			bytes.uncompress();
			var type:int = bytes.readUnsignedInt();
			var darwinObj:Object = bytes.readObject();
			var retArr:Array = [];
			for(var key:String in darwinObj)
			{
				var darwinBitmapData:DarBitmapData = DarBitmapData.parseData(key,darwinObj[key]);
				retArr.push(darwinBitmapData);
			}
			return retArr;
		}
	}
}